package com.color.admin.system.servie;



import com.color.admin.common.core.base.BaseService;
import com.color.admin.common.core.page.PageRequest;
import com.color.admin.common.core.page.PageResponse;
import com.color.admin.system.entity.SysDictDetail;
import com.color.admin.system.entity.query.DictQueryCriteria;
import com.color.admin.system.entity.vo.dict.DictDetailVo;

import java.util.List;
import java.util.Set;

/**
 * @author HaiQiu
 */
public interface DictDetailService extends BaseService<SysDictDetail,SysDictDetail,
        Set<String>, String,SysDictDetail, PageRequest<DictQueryCriteria>, PageResponse<DictDetailVo>> {
    @Override
    void save(SysDictDetail sysDictDetail);

    @Override
    void update(SysDictDetail sysDictDetail);

    @Override
    void delete(Set<String> strings);

    @Override
    SysDictDetail get(String dictDetailId);

    @Override
    PageResponse<DictDetailVo> list(PageRequest<DictQueryCriteria> request);

    /**
     * 保存并返回
     * @param dictDetail 数据
     * @return 返回
     */
    SysDictDetail saveRes(SysDictDetail dictDetail);

    /**
     * 保存并返回
     * @param dictDetail 数据
     * @return 返回
     */
    SysDictDetail updateRes(SysDictDetail dictDetail);

    /**
     * 根据code码查询字典，不传值默认查询所有
     * @param code 字典code码
     * @return 字典查询所有
     */
    List<DictDetailVo> getByCode(String code);
}
